package com.hst.capacity.application.biz;

import com.hst.capacity.domain.model.entity.driver.DriverCarEntity;
import com.hst.capacity.domain.model.entity.vehicle.VehicleInsuranceEntity;
import com.hst.capacity.domain.model.entity.vehicle.VehicleLicenseEntity;
import com.hst.capacity.domain.model.request.vehicle.*;
import com.hst.capacity.domain.model.response.LabelValueVO;
import com.hst.capacity.domain.model.response.PagingResultVO;

import java.util.List;

public interface VehicleBiz {

    List<LabelValueVO> findVehicleTypeByStationInfo(VehicleTypeParam param);
    String addVehicle(VehicleAddParam param);
    List<DriverCarEntity> addVehicleRelation(VehicleRelationParam param);
    Boolean activeVehicleRelation(String id);
    Boolean deleteVehicleRelation(String id);
    List<DriverCarEntity> listVehicleRelation(String id);
    PagingResultVO search(VehicleSearchParam param);

    VehicleInsuranceEntity addInsurance(VehicleAddInsuranceParam param);

    VehicleLicenseEntity addCertificate(VehicleAddCertificateParam param);
    Object vehicleEditSelect(String idVehicle,String moduleName);

    Boolean vehicleDelete(String id);

    List<LabelValueVO> findVehicleType(VehicleTypeParam param);

    List<LabelValueVO> findAllVehicleType();

    String findVehicleType(int idVehicleType);

}
